Create or update the named transform.
URL Parameters | |
---|---|
title? |
Title metadata for the transform. This free-form string is returned
by GET /v1/config/transforms .
|
provider? |
Provider metadata for the transform. This free-form string is returned
by GET /v1/config/transforms .
|
version? |
Version metadata for the transform. This free-form string is returned
by GET /v1/config/transforms .
|
description? |
Description metadata for the transform. This free-form string is returned
by GET /v1/config/transforms .
|
trans:{name}* | The name, type, and cardinality of a transform-specific parameter. {name} is the parameter name. The parameter value is an XQuery SequenceType, including cardinality (*, ?, etc.) such as appears in the type declaration of an XQuery function parameter. |
format? |
You can use this parameter as a fallback to the request Content-type
header. The Content-type header takes precedence
over format in most cases; for details, see
Controlling Input and Output Content Type in the REST Application Developer's Guide.
Accepted values: xslt , xquery , or
javascript .
|
Request Headers | |
---|---|
Content-Type |
The MIME type of the data in the request body, one of
application/xslt+xml , application/xquery ,
or application/vnd.marklogic-javascript .
|
Upon success, MarkLogic Server responds with status 204 (Transform Created).
rest-admin
role, or the
following privileges:
http://marklogic.com/xdmp/privileges/rest-admin
http://marklogic.com/xdmp/privileges/rest-writer
http://marklogic.com/xdmp/privileges/rest-reader
Once installed, the transform can be used with other MarkLogic
REST API services that accept a transform
parameter.
It is recommended that the request always include a Content-type header, even though it is not strictly required.
If the named transform is already installed, MarkLogic Server replaces the content and metadata with the new information from this request.
For more details, see Working With Content Transformations in the REST Application Developer's Guide.
$ curl --anyauth --user user:password -X PUT -d@"./transform.xqy" -i \ -H "Content-type: application/xquery" \ 'http://localhost:8004/v1/config/transforms/example?title=example transform' ==> Install an XQuery transform named "example" with the description "example transform" and the implementation contained in transform.xqy. MarkLogic Server responds with headers of the form: Server: MarkLogic Content-Type: text/xml; charset=UTF-8 Content-Length: 211 Connection: close HTTP/1.1 204 Created Server: MarkLogic Content-Type: text/plain; charset=UTF-8 Content-Length: 4 Connection: close
# Note: Use --data-binary instead of -d with curl to preserve newlines # in the input, such as line-oriented comments (//). $ curl --anyauth --user user:password -X PUT -i \ --data-binary @"./transform.sjs" \ -H "Content-type: application/xquery" \ 'http://localhost:8004/v1/config/transforms/example?title=example transform' ==> Install a Server-Side Javascript transform named "example" with the description "example transform" and the implementation contained in transform.sjs. MarkLogic Server responds with headers of the form: Server: MarkLogic Content-Type: text/xml; charset=UTF-8 Content-Length: 211 Connection: close HTTP/1.1 204 Created Server: MarkLogic Content-Type: text/plain; charset=UTF-8 Content-Length: 4 Connection: close